/****************************************************************************
 *   Copyright(C)2013-2014 by TanekLiang<y574824080@gmail.com>              *
 *                                                                          *
*  Licensed under the Apache License, Version 2.0 (the "License");          *
*  you may not use this file except in compliance with the License.         *
*  You may obtain a copy of the License at                                  *
*                                                                           *
*     http://www.apache.org/licenses/LICENSE-2.0                            *
*                                                                           *
*  Unless required by applicable law or agreed to in writing, software      *
*  distributed under the License is distributed on an "AS IS" BASIS,        *
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
*  See the License for the specific language governing permissions and      *
*  limitations under the License.                                           *
*                                                                           *
****************************************************************************/

#ifndef __KEY_H__
#define __KEY_H__
      
/*============================ INCLUDES ======================================*/
#include ".\app_cfg.h"

#if USE_COMPONENT_KEY == ENABLED

#include ".\key_interface.h"

/*============================ MACROS ========================================*/

/*============================ MACROFIED FUNCTIONS ===========================*/
/*============================ TYPES =========================================*/
/*============================ GLOBAL VARIABLES ==============================*/
/*============================ LOCAL VARIABLES ===============================*/
/*============================ PROTOTYPES ====================================*/

/*! \brief key task initialization
 *! \param none
 *! \return none
 */
extern void key_init(void);

/*! \brief key task 
 *! \param none
 *! \return none
 */
extern void key_task(void);

/*! \brief get key event 
 *! \param ptKey Key Event
 *! \return true get key succeed
 *! \return true get key failed
 */
extern bool get_key(key_event_t* ptKey);

#endif

#endif
/* EOF */
